1. Technical Field
The invention relates to an apparatus for the generation of a program for a programmable logic controller having a plurality of inputs and outputs which includes a program input unit having a display unit for the selection and compilation of a plurality of symbols and a generation unit for generating a program code for the programmable logic controller from an arrangement of symbols compiled at the display of the program input unit having a programming input unit having a display unit for the selection and compilation of a plurality of symbols, a generation unit for the generation of a program code for the programmable logic controller from a compiled arrangement of symbols at the display unit of the programming input unit.
The invention further relates to a programming unit for a programmable logic controller having such an apparatus for the generation of a program, a corresponding method for programming a programmable logic controller including the steps of selecting and compiling symbols at a display unit of a programming input unit which includes symbols in accordance with a desired programming at least for transmitter inputs, actuator outputs, predefined program modules and signal connection paths, generating a program code for the programmable logic controller from the compiled arrangement of symbols at the display unit of the program input unit and transferring the program code to a programmable logic controller and to a computer program product for use with such an apparatus, such a programming unit and/or such a method.
2. Related Art
Nowadays automated solutions are frequently realized by means of programmable logic components. Partial problems are programmed in separate program modules (functional components, macros) and are used in superimposed units.
Programmable logic controllers (PLC's) are used in particular for safety controls which are programmed corresponding to safety requirements. During operation signals of transmitters are present at the inputs of such a safety control, for example, signals of specific sensors such as motion detectors, light barriers or similar can be present. The outputs of the safety controllers are connected to actuators which initiate specific processes in dependence on the signals of the transmitters present at the inputs. Thereby, for example a safety controller can be provided that switches off a machine or transmits a warning signal on receiving a corresponding input signal.
In a method known from EP 1 362 269 B1 the respectively required program modules are selected and compiled to a program which is suitable for the operation of a safety control in the course of a programming procedure. To increase the clarity during programming and to avoid programming errors these selectable program modules are displayed at a first part of a display surface and compiled, for example, by means of drag-and-drop into a different monitor region, which monitor region corresponds to a programming interface.
EP 2 012 201 A1 describes a method for programming a safety controller to be connected to transmitters and to actuators in which initially a wiring diagram is generated. The safety controller is schematically displayed at a graphical programming interface with its connection clamps. Transmitters and actuators are selected by means of transmitter symbols and actuator symbols. Wiring symbols are displayed at the programming interface which connect the transmitter symbols and the actuator symbols with the connection clamps associated therewith. Using this information a program for the safety control is generated, wherein program parts are automatically activated and/or compiled which are provided for the evaluation of the selected transmitters and the control of the selected actuators. Parameters are automatically associated with these program parts which corresponds to those connection clamps to which the respective transmitter symbols and actuator symbols are connected.
With the aid of such programming methods or using programming languages described for example in the norm DIN EN 61131-3 (for example, FCL—“functional component language” corresponding to FBD—“function block diagram”; LD—“ladder diagram”; IL—“instruction list”; ST—“structured text” the program for a programmable logic controller can be intuitively generated by means of graphic symbols. In this respect graphic symbols describe, amongst other things, transmitter inputs and actuator outputs, or alternatively transmitters and actuators to be connected. Using this information it is already determined how the respective inputs and outputs of the programmable logic controller have to be configured to be able to communicate with the respective transmitters and actuators.
Program modules used are for example pre-programmed functional components or macros which can be stored in a program library. Program modules can also be formed by logic links such as AND, OR, XNOR etc.
Through this type of programming and because of the increasing complexity the clarity can, however, be lost.
In particular, for complex applications having a large number of logic intermediate sizes it can in this respect be difficult to comprehend which inputs of the safety controller interact with which outputs of the safety controller. Thus it is frequently difficult to recognize what influence the change of a signal at a certain input of the safety controller has on which output of the safety controller. To illustrate the connections between the inputs and the outputs of the programmable logic controller it is necessary to generate and to evaluate a logic report which frequently comprises a plurality of pages.